#  引入合适的模块
import matplotlib.pyplot as plt
import cv2 as cv
from skimage import io

monkey = io.imread('monkey.jpg')  # 读RGB图:  monkey.jpg

h, w, _ = monkey.shape  # 获取monkey.jpg的  高h  和  宽w

moon = io.imread('moon.jpg')[0:h, 0:w]  # 读RGB图:  moon.jpg,  从左上角起，截取与monkey.jpg等大小部分

avg = cv.imread('monkey.jpg', 0)  # 获取猴图均值灰度图

b = monkey[:, :, 2]  # 获取猴图蓝色通道灰度图

mask = b > avg * 0.9  # 获取猴图中背景掩模（蓝色占主导，严格系数0.9）
monkey[mask] = moon[mask]  # 把猴图的背景部分用月球图的对应部分代替

plt.imshow(monkey, cmap='gray')
#  调整子图位置
#  以最紧凑模式把plt.show()对应内容保存显示内容到  out.png
plt.tight_layout()
plt.savefig('out.png', bbox_inches='tight')
plt.show()
